package com.pzhu.user.domain.entity;

import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.pzhu.base.common.utils.mybatisflex.LogicDeleteEntity;
import com.pzhu.user.domain.enums.MenuType;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.pzhu.base.common.utils.mybatisflex.BaseEntity;

import java.io.Serial;
import java.io.Serializable;

/**
 * @TableName menu
 */
@EqualsAndHashCode(callSuper = true)
@Table(value = "menu")
@Data
public class Menu extends LogicDeleteEntity implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    @Id(keyType = KeyType.Auto)
    private Long id;

    /** 父ID */
    private Long parentId;

    /** 菜单编码 */
    private String menuCode;

    /**
     * 菜单类型
     */
    private MenuType type;

    /**
     * 菜单名称
     */
    private String menuName;

    /**
     * 菜单标签
     */
    private String menuTagList;

    /**
     * 菜单其他信息
     */
    private String meta;
}